home *** CD-ROM | disk | FTP | other *** search
- Targa
- Targa+
-
- Usually the Targa+ operates in Non-Contigous mode where the 16 I/O registers
- used are spread in 4 groups of 4 registers each separated by 400h. By setting
- a jumper the Targa+ can operate in Contigous mode where the 16 registers are
- laid out sequentially. Also the base I/O address is set by jumpers.
-
- Note that this is one adapter where the indexed registers can really be 16bit
- wide, so that the notation W(R/W) indicates ONE 16bit index, not two 8bit ones
-
- Contiguous: Non-Contiguous: Read: Write:
- Reg00: + 00h + 0000h VIDSTAT COLOR0
- Reg01: + 01h + 0001h COLOR1
- Reg02: + 02h + 0002h CTL COLOR2
- Reg03: + 03h + 0003h MASKL COLOR3
- Reg04: + 04h + 0400h LBNK VIDCON
- Reg05: + 05h + 0401h READAD INDIRECT
- Reg06: + 06h + 0402h MODE1 HUESAT
- Reg07: + 07h + 0403h OVSTRT OVSTRT
- Reg08: + 08h + 0800h USCAN MASKL
- Reg09: + 09h + 0801h MASKH MASKH
- Reg10: + 0Ah + 0802h OSCAN LBNK
- Reg11: + 0Bh + 0803h HBNK HBNK
- Reg12: + 0Ch + 0C00h ROWC ROWC
- Reg13: + 0Dh + 0C01h MODE2 MODE2
- Reg14: + 0Eh + 0C02h RBL WBL
- Reg15: + 0Fh + 0C03h RBH WBH
-
-
- Reg00 (R): VIDSTAT
- bit 0 If set an odd field is being displayed if clear an even field.
- 1 If clear a sync signal is detected indicating that an external video
- source is connected to the Targa+
-
- Reg00 (W): COLOR0
- bit 0-7 Low byte of the Border Color
- Note: this register is also accessible as ADV index E0h
-
- Reg01 (W): COLOR1
- bit 0-7 Second byte of the Border Color
- Note: this register is also accessible as ADV index E1h
-
- Reg01 (R): CTL
- bit 0 Set whenever a vertical blanking occurs. Cleared when this register
- is read
- 1-3 The version number for the Targa chipset
- 4-7 Memory configuration. Ah: T16, Bh: T16P, Eh: T16/32, Fh: T16/32P
- or T64
-
- Reg02 (W): COLOR2
- bit 0-7 Third byte of the Border Color.
- When in 16bit mode this should be set to 0.
- Note: this register is also accessible as ADV index E2h
-
- Reg03 (R): MASKL
- This is the read port for Reg08
-
- Reg03 (W): COLOR3
- bit 0-7 High byte of the Border Color.
- When in 16 or 24bit mode this should be set to 0
- Note: this register is also accessible as ADV index E3h
-
- Reg04 (R): LBNK
- This is the read port for Reg10
-
- Reg04 (W): VIDCON
- bit 0 LiveMixSrc. 0: Bilevel Blending, 1: Dynamic Blending
- 1-5 Contrast. 10h is nominal
- 6 Set if inputting from a RGB source, clear for Composite or S-video
- inputs.
- Note: This register is also present at Advanced index E4h.
-
- Reg05 (R): READAD
- bit 3 INAE. If set the Targa+ is in Advanced Operating Mode
- Note: This is the read port for the ADVANCED register (Std indirect 90h)
-
- Reg05 (W): INDIRECT
- bit 0-7 If the Targa+ is in Advanced Mode (the INAE bit is set) this is the
- index register for the Advanced registers.
- Write the index to this register and read/write the data at Reg14.
-
- Reg06 (R): MODE1
- This is the read port for Reg12
-
- Reg06 (W): HUESAT
- bit 0-4 Hue for input composite video. Nominal 10h
- 5-7 Saturation for input composite video. Nominal 4
-
- Reg07 (R/W): OVSTRT
- bit 0-7 Used for standard Targa mode
-
- Reg08 (R): USCAN
- Reading this register places the Targa+ in underscan mode
-
- Reg08 (W): MASKL
- bit 0-7 Low mask byte. Each bit set will protect the corresponding bit(s) in
- memory from change during CPU access. This does not affect capture!
- Note: This register can be read from Reg03
-
- Reg09 (R/W): MASKH
- bit 0-7 High mask byte. Each bit set will protect the corresponding bit(s) in
- memory from change during CPU access. This does not affect capture!
-
- Reg10 (R): OSCAN
- Reading this register places the Targa+ in overscan mode
-
- Reg10 (W): LBNK
- bit 0-5 32K bank number for the lower half of the 64K window
- Note: This register can be read from Reg04
-
- Reg11 (R/W): HBNK
- bit 0-5 32K bank number for the upper half of the 64K window
-
- Reg12 (R): ROWCNT
- bit 0-7 This register is 0 when the display is in retrace, or else the number
- of the line currently being displayed
-
- Reg12 (W): MODE1
- bit 0 If set the video memory is enabled, if clear the video memory is
- disabled and can not be read or written.
- 3-5 In Targa compatibility mode this selects one of eight 64K video
- memory blocks
- 6 MOD. If clear the INDIRECT register (reg05) is an index to the
- advanced indirect registers. If set the INDIRECT register is an index
- to the standard indirect registers.
- Note: This register can be read from Reg06
-
- Reg13 (R/W): MODE2
- bit 2-3 ZOOM factor. 0: none, 1: x2, 2: x4, 3: x8
- 4-5 DISPMODE.
- 0: Display from memory with fixed color border
- 1: Live video with fixed color border
- 2: Overlay mode with live border
- 3: Live mode with live border
- 6 Enables the capture feature.
- 7 GENLOCK. If set the Targa+ will attempt to sync to the clock supplied
- with the incoming video. If clear the Targa+ is in Master Mode and
- provides its own video timing control
-
- Reg14 W(R/W): RB/WB
- bit 0-15 Data port for the Advanced registers. The index is written to Reg05
- and the data is read or written in this register.
- Some of the Advanced registers are 8bits and some 16bits.
-
- ADV index 20h W(R/W): CLOCK
- bit 0-10 The 13.5MHz clock is divided by this value to get the line clock.
- I.e.. 858 gives 13.5MHz/858 = 15.734KHz (NTSC frequency).
-
- ADV index 21h (R/W): GENCTRL
- bit 0 Vertical Preload Mode. If set the vertical counter is reset every
- time the frame alignment is found to be false, if clear the vertical
- counter is reset only after 7 consecutive fields are found to be
- misaligned.
- 1-2 Field. Selects the field which is used for frame alignment.
- 0: Odd field, 1: Even field, 2: either field is used.
- 3-5 (R) If bit 0 is clear, this is the number of consecutive
- misalignments which has happened.
-
- ADV index 40h W(R/W): VTOTAL
- bit 0-10 This is twice the number of lines in a field. If the value is odd,
- interlaced timing will be generated.
- 11-15 Should be set to 0
-
- ADV index 41h W(R/W): HTOTAL
- bit 0-8 This is the number of SGCLK pulses in half a scanline
- 9-15 Should be set to 0
-
- ADV index 42h W(R/W): SYNC
- bit 0-3 This is twice the number of scanlines used for vertical sync.
- 4-7 Should be set to 0
- 8-13 This is half the number of SGCLK pulses in one horizontal sync
- pulse.
- 14-15 Should be set to 0
-
- ADV index 43h W(R/W): HPHASE
- bit 0-8 When the Targa+ is in Slave Genlock mode, this is the number of
- SGCLK pulses before a Horizontal Reference pulse is generated.
- Depending on bit 9 this is from the start or the middle of the line.
- 9 If set the value in bits 0-8 is from the middle of the scanline,
- if clear it is from the beginning of the scanline.
- 10-15 Should be set to 0
-
- ADV index 44h W(R/W): VBEND
- bit 0-10 This is twice the number of scanlines blanked for each field.
- 11-15 Should be set to 0
-
- ADV index 45h W(R/W): HBSTRT
- bit 0-8 The number of SGCLK pulses from the middle of the scanline to the
- start of the Horizontal Blanking.
- 9 Should be set to 1
- 10-15 Should be set to 0
-
- ADV index 46h W(R/W): HBEND
- bit 0-8 The number of SGCLK pulses from the end of the scanline to the end
- of Horizontal Blanking.
- 9-15 Should be set to 0
-
- ADV index 47h W(R/W): VSTRT
- bit 0-10 This is twice the scanline where display starts. If this value is
- larger than VEND (index 44h) a border is shown in the color defined
- by COLOR0-3 (Reg00-Reg03).
- 11-15 Should be set to 0
-
- ADV index 48h W(R/W): VEND
- bit 0-10 This is twice the number of the scanline where display stops.
- If this value is smaller then VTOTAL (index 40h) a border is shown
- in the color defined by COLOR0-3 (Reg00-Reg03).
- 11-15 Should be set to 0
-
- ADV index 49h W(R/W): HSTRT
- bit 0-9 The number of SGCLK pulses from the end of the scanline until
- display starts. If this value is larger than HBEND (index 46h) a
- border is shown in the color defined by COLOR0-3 (Reg00-Reg03).
- 10-15 Should be 0
-
- ADV index 4Ah W(R/W): HEND
- bit 0-9 The number of SGCLK pulses from the middle of the scanline until the
- display stops. If this value is smaller then HBSTRT (index 45h) a
- border is shown in the color defined by COLOR0-3 (Reg00-Reg03).
- 10-15 Should be 0
-
- ADV index 4Bh W(R/W): BURST
- bit 0-6 The number of SGCLK pulses from the start of Horizontal Blanking to
- the start of the color burst signal.
- 7 Should be set to 0
- 8-13 The width of the color burst in SGCLK pulses.
- 14-15 Should be set to 0
-
- ADV index 4Ch W(R/W): SGCNTRL1
- bit 0-3 Delay for sync outputs in number of pixels. Typically 9.
- 4-7 Delay for the composite blanking in number of pixels.
- Typically 5.
- 8 Should be set to 0
- 9 Number of refresh cycles per scan lines
- 10-15 Should be set to 0
-
- ADV index 4Dh W(R/W): SGCNTRL2
- bit 0 Should be set to 0
- 1 If set use Meander burst mode (PAL), if clear use normal burst mode
- (NTSC).
- 2-3 The field generated when doing non-interlaced scanning.
- In normal burst mode (NTSC) 0: Even field, 1: Odd field.
- In Meander burst mode (PAL) 0: field0, 1: field1, 2: field2,
- 3: field3
- 4 If set the new sync generator is used for access to the new Targa+
- feature set, if clear the original sync generator is used for
- compatibility with the original Targa
- 5 If set video display is enabled.
- 6 If set video refresh is enabled.
- 7 If set enables the sync outputs (Horizontal Sync, Vertical Sync,
- Composite Sync, Composite Blanking, Color Burst and half
- horizontal rate signal used for PAL). If clear these outputs are
- held in their inactive state.
- 8-15 Should be set to 0
-
- ADV index 4Eh W(R/W): SGSTATUS
- bit 0-1 The current field being displayed.
- In normal burst mode (NTSC): 0: Even field, 1: Odd field
- In Meander burst mode (PAL):
- 0: field0, 1: field1, 2: field2, 3: field3
- 2 If set the Targa+ is producing vertical sync.
- 3 The vertical drive signal
- 4 If set the Targa+ is producing vertical sync.
- 5-15 Should be set to 0
-
- ADV index 53h W(R/W): LINECNT
- bit 0-9 The number of the scanline being displayed.
- 10-15 Should be set to 0
- Note: the lower 8 bits can also be read from the ROWCNT (Reg12) register.
-
- ADV index 80h W(R/W): TOP
- bit 0-9 This is display line the display wraps to when it reaches the line
- in BOT. In interlaced modes this is half the line number
-
- ADV index 81h W(R/W): BOT
- bit 0-9 When the display reaches this line it wraps to the line in TOP
- In interlaced modes this is half the line number
-
- ADV index 82h W(R/W): VPAN
- bit 0-9 This is the line number the display starts at for each field.
- This is coded as 511-(Physical row / 2)
-
- ADV index 84h (R/W): DSCAN
- bit 0 If clear the display is interlaced.
- 1-6 Should be set to 0
- 7 If the display is non-interlaced (bit 0 is set) this bit selects
- whether the first line displayed is from the odd or even bank.
- 0: Odd, 1: Even
-
- ADV index 85h (R/W): CLOCKMODE
- bit 0-1 Clocking mode:
- 0: Up to 512 pixels per scanline, interlaced. PCLK from 9.5 to
- 11.5MHz. Can both display and capture.
- PCLK = SGCLK = SCLK = MCLK/4
- 1: Up to 512 pixels per scanline, non-interlaced. PCLK from 19 to
- 23MHz. Display only.
- PCLK = SCLK = MCLK/2, SGCLK = MCLK/4
- 2: Hiresolution interlaced modes. PCLK from 11.5 to 13MHz and from
- 13.5 to 15MHz. Can both display and capture.
- PCLK = SGCLK = MCLK/2, SCLK = MCLK/4
- 3: Hiresolution non-interlaced modes. PCLK from 23 to 26MHz and
- from 27 to 30MHz. Display only.
- PCLK = MCLK, SGCLK = SCLK = MCLK/2
- 2-3 Should be set to 0
- 4 Set if in hiresolution modes (>512 pixels across).
- 5-6 These bits must be preserved when writing this register
- 7 Should be set to 0
-
- ADV index 90h (R/W): ADVANCED
- bit 0-1 Memory mode. 0: 8bit per pixel, 1: 16bit, 2: 24bit, 3: 32bit.
- 2 Set in 16 and 32 bit modes except 16bit hiresolution modes.
- 3 INAE. If set the Targa+ is in Advanced Operation mode, if clear in
- Standard Operation mode.
- 4-5 Must be set to 0
- 6 If set interrupts are active high, if clear active low.
- 7 If set interrupts are enabled, if clear disabled.
-
- ADV index 91h (R/W): WAIT
- bit 0-1 Wait states for reads: 0: 1, 1: 2, 2: 4, 3: 0
- 2-3 Wait states for writes: 0: 1, 1: 2, 2: 4, 3: 0
- 4-5 Wait states for I/O ops: 0: 1, 1: 2, 2: 4, 3: 0
- 6 DacClk. Clock signal for I2C bus. This bit should be preserved
- unless the I2C bus is being accessed.
- 7 DacData. Data signal for I2C bus. This bit should be preserved
- unless the I2C bus is being accessed.
-
- ADV index 92h (R/W): CEM
- bit 0-3 ByCap. Each bit if set enables capture via one channel.
- Bit 0 is the Blue channel, bit 1 is the Green, bit 2 is the Red
- and bit 3 is the Alpha channel.
-
- ADV index A0h W(R/W): TAP
- bit 0-9 In Advanced Operating Mode this is the number of the first pixel
- displayed in each line. In DSCAN or Hires mode this is in units of
- two pixels
-
- ADV index A1h (R/W): MEMORY
- bit 0 Must be preserved.
- 1-4 Video Memory base address:
- BigBank/Linear mode: Bank mode:
- 0: illegal 80000h
- 1: 100000h 90000h
- 2: 200000h A0000h
- 3: 300000h B0000h
- 4: 400000h C0000h
- 5: 500000h D0000h
- 6: 600000h E0000h
- 7: 700000h F0000h
- 8: 800000h illegal
- 9: 900000h illegal
- Ah: A00000h illegal
- Bh: B00000h illegal
- Ch: C00000h illegal
- Dh: D00000h illegal
- Eh: E00000h illegal
- Fh: F00000h illegal
- 5-6 Memory addressing:
- 0 Bank addressing
- 2 BigBank addressing
- 3 Linear Addressing
- 7 If clear memory transfers are 16bit
-
- ADV index B0h W(R/W): BITCAP
- bit 0-15 Should be set to FFFFh. Reserved for future use.
-
- ADV index D0h (R/W): VGA
- bit 0 Set if each line is wider than 512 pixels.
- 2 compareEnb. See index EAh bits 0-1.
- 3-4 OverlayVGASrc. Determines the VGA overlay mode.
- 0: VGA only, 1: TARGA+ only, 2: TARGA+ overlay (TARGA+ specifies
- overlay), 3: VGA overlay (VGA specifies overlay)
- 5 MixLock. Used to lock the mixer in the off state.
- Should be set to 1 for compatibility with the original Targa.
- 7 Diff8. If set the difference between the 8bit live signal and an
- 8bit memory image is produced at the output of the mixer.
-
- ADV index D1h (R/W): COMP0
- bit 0-7 Low byte of the 24bit COMP register used in VGA and TARGA+ overlay
- compare
-
- ADV index D2h (R/W): COMP1
- bit 0-7 Middle byte of the 24bit COMP register used in VGA and TARGA+
- overlay compare. This byte is not used in 8bit modes
-
- ADV index D3h (R/W): COMP2/VGAMASK
- bit 0-7 High byte of the 24bit COMP register used in VGA and TARGA+
- overlay compare. This byte is only used in 24bit modes.
- This value is also used as a mask value for the TARGA+ and VGA 8bit
- overlay compare modes
-
- ADV index D8h (R/W): LUT WRITE
- bit 0-7 This is the write index into the RAMDAC palette. First write the
- index of the palette color to this register, then write three times
- to the LUT COLOR PALETTE register (index D9h) (red, green and then
- blue). When the blue data is written, this register is automatically
- incremented.
- This is functionally equivalent to the VGA register 3C8h
-
- ADV index D9h (R/W): LUT COLOR PALETTE
- bit 0-7 Palette data.
- This is functionally equivalent to the VGA register 3C9h
-
- ADV index DAh (R/W): LUT MASK
- bit 0-7 This value is anded with the color index before it reaches the
- palette chip.
- This is functionally equivalent to the VGA register 3C6h
-
- ADV index DBh (R/W): LUT READ
- bit 0-7 This is the read index into the RAMDAC palette. First write the
- index of the palette color to this register, then read three times
- from the LUT COLOR PALETTE register (index D9h) (red, green and then
- blue). When the blue data is read, this register is automatically
- incremented.
- This is functionally equivalent to the VGA register 3C7h
-
- ADV index DEh (R/W): LUT COMMAND
- bit 0-1 Selects the frequency band.
- 2 Enables the sync generator if set. Should be set for proper
- operation.
- 3 DacEnb. Should be set (1) for proper operation.
- 4 Should be set (1).
- 5 Selects whether a 0 IRE or 7.5 IRE blanking pedestal is used.
- Should be set to 0 for PAL signals.
- 6-7 Should be set to 0.
-
- ADV index E0h (R/W): COLOR0
- bit 0-7 Low byte of the Border Color
- Note: this register can also be written to at Reg00
-
- ADV index E1h (R/W): COLOR1
- bit 0-7 Second byte of the Border Color
- Note: this register can also be written to at Reg01
-
- ADV index E2h (R/W): COLOR2
- bit 0-7 Third byte of the Border Color
- Note: this register can also be written to at Reg02
-
- ADV index E3h (R/W): COLOR3
- bit 0-7 High byte of the Border Color
- Note: this register can also be written to at Reg03
-
- ADV index E4h (R/W): VIDCON
- bit 0 LiveMixSrc. 0: Bilevel Blending, 1: Dynamic Blending
- 1-5 Contrast. 10h is nominal
- 6 Set if inputting from a RGB source, clear for Composite or S-video
- inputs.
- Note: This register can also be written to at Reg04
-
- ADV index E5h (R/W): LIVEMIXZERO
- bit 0-7 Used with the chromakeyer as an amplitude adjustment.
- The LIVEMIX control signal to the digital Blender is calculated as:
- (LiveMixIn - LIVEMIXZERO) << LiveMixGain
- LiveMixGain is bits 6-7 of the BUFFERPORT register
-
- ADV index E6h (R/W): HUESAT
- Note: This register can also be written to at Reg06
-
- ADV index E7h (R/W): SVIDEO
- bit 0-6 Should be set to 1
- 7 SVHS. If VIDCON (ADV index E4h) bit 6 is clear this bit selects
- whether the input is a standard composite signal (0) or Svideo (1).
- Svideo means you have separate Y and C signals.
-
- ADV index E8h (R/W): VIDEOMODE
- bit 0-1 BufferPortSrc. Only valid if index E9h bit 0 is 0.
- Determines the input to the Buffer Port Input of the Blender
- 0: 8bits, 1: lower 16bits, 2: upper 16bits, 3: 24bits
- 2-3 Which8. Selects the byte (Red, Green, Blue or Alpha) sent to the
- Blender Input 2 (in 8bit mode) or used as overlay control data (in
- 32bit mode). 0: Blue, 1: Green, 2: Red, 3: Alpha
- 4 MonoSrc. If bits 5-6 are 0 this selects the source of the monochrome
- capture. 0: green input channel, 1: Chromakeyer
- 5-6 CM. TARGA+ capture mode: 0: Mono, 2: 16bit color, 3: 24bit color
- 7 bbyp. If set the Blender is bypassed and the output to the DACs is
- directly from the VRAM
-
- ADV index E9h (R/W): BUFFERPORT
- bit 0 BufferPortColor. If set the Buffer Port Input of the Blender is fed
- from the Border Color registers, if clear from VRAM
- 1 LivePortColor. If set (and BLENDER1 bit 4 is set) the Live Port of
- the Blender receives bits 0-14 of the border color registers, rather
- than from VRAM
- 2 LiveMixColor. If set, Color3 provides the LIVEMIX control signal
- 3-4 LutByp. Contro9ls whether the output of the Blender is passed
- through or around the LUTs
- 5 Alpha8. Data width of the Alpha channel. 8bit if set, 7 if clear.
- 6-7 LiveMixGain. Shiftvalue for the alpha control values passed to the
- blender. 0: Normal, 1: Shift left 1 bit, 2: Shift left 2 bits.
-
- ADV index EAh (R/W): MIXCTRL3
- bit 0-1 overlaySrc. Specifies the source of the overlay control signal.
- If index D0h bit 2 is set, the source is:
- 0: 8bit masked compare, 2: 15/24 bit compare
- if clear, the source is:
- 0: bit 15 of VRAM, 1: bit 31 of VRAM, 2: 0
- 2 overlayInv. If set the overlay control data is inverted before being
- used.
- 3 liveMixInv. If set the Alpha control signal is inverted before
- reaching the blender.
- 4 CM3. If set the Targa+ recaptures the blended output from the
- blenders.
- 5-7 Reserved. Should be set to 0
-
- ADV index EBh (R/W): LIVEPORT
- bit 0-2 Reserved. Should be set to 0
- 3 livePortWord. Only valid if bit 4 set and index E9h bit 1 is clear.
- If set the upper 16 bits of VRAM are sent to the blender, if clear
- the lower 16 bits are used
- 4 livePortSrc. If set the blender is fed from the border color
- registers or from VRAM, if clear live data is fed to the blender.
- 5 live8. Only active if bit 4 is set and
- 6 fgp. Controls the ForeGround processor used in conjugation with the
- chromakeyer.
- 7 Reserved. Should be set to 0
-
- ADV index ECh (R/W): INVERT
- bit 0 ZeroBlue. If set the blue signal does not participate in the
- calculation of chroma signal
- 1 Chroma. If set the chromaOut signal only depends on the blue input
- 2-5 Should be set to 9
- 6 GreenKey. If set the red signal input does not participate in the
- calculation of the chroma signal, if clear the green input is left
- out.
- 7 livePortInv. If set the live data being routed to Blender Input 1
- will be inverted
- Note: The chroma output is:
- ChromaOut = [(blur - max(red,green))* (1-zeroBlue)] +
- [(255-(green*GreenKey)+(red*(1-Greenkey)))]*(1-chroma)
-
- ADV index EDh (R/W): NOTOVLLEVEL
- bit 0-7 This value is used as a constant blend value when the B-level blend
- mode is selected (bit 0 of VIDCON (ADV index E4h) is 0) and the OVL
- signal is 0
-
- ADV index EEh (R/W): OVLLEVEL
- bit 0-7 This value is used as a constant blend value when the B-level blend
- mode is selected (bit 0 of VIDCON (ADV index E4h) is 0) and the OVL
- signal is 1
-